The present application relates generally to an improved data processing apparatus and method and more specifically to mechanisms for disaster recovery of managed systems.
In computing, a virtual machine (VM) is an emulation of a computer system. Virtual machines are based on computer architectures and provide at least some of the functionality of a typical physical computer. The implementation of VMs may involve specialized hardware, software, or a combination of hardware and software. There are different kinds of virtual machines, each with different functions. System virtual machines (also sometimes called full virtualization VMs) provide a substitute for a real machine. System virtual machines provide functionality needed to execute entire operating systems. Typically, a hypervisor uses native execution to share and manage hardware, allowing for multiple environments which are isolated from one another, but which exist on the same physical machine. Process virtual machines execute computer programs in a platform-independent environment. Other types of VMs emulate different architectures and allow execution of software applications and operating systems written for another CPU or architecture. Operating-system-level virtualization allows the resources of a computer to be partitioned via the kernel's support for multiple isolated user space instances (that is, containers) and may look and feel like real machines to the end users.
Disaster recovery (DR) refers to a set of policies and procedures to enable the recovery and/or continuation of vital technology infrastructure and systems following a natural or human-caused disaster. Disaster recovery focuses on information technology (IT) or technology systems supporting critical business functions. During the 1980s and 90s, customer awareness and industry both grew rapidly, driven by the advent of open systems and real-time processing which increased the dependence of organizations on their IT systems. Regulations mandating business continuity and disaster recovery plans for organizations in various sectors of the economy, imposed by the governmental and/or private businesses, led to the availability of commercial disaster recovery services. With the rapid growth of the computerized communication networks, organizations of all sizes became further dependent on the continuous availability of their IT systems, with some organizations setting objectives of over 99 percent availability of critical systems. Modern DR includes technology such as high-availability solutions and hot-site facilities. Under current DR technology, critical IT services can be served remotely, hence on-site recovery became less important. Increased use of cloud computing continues that trend. Now, it typically matters less where computing services are physically served, just so long as the network itself is sufficiently reliable. “Recovery as a Service” (RaaS) is one of the security features or benefits of cloud computing being promoted by the Cloud Security Alliance.
The cloud is a network of computers that store and process information, where the resources, such as hardware, software, memory, or the like, are shared by multiple organization and/or individuals. The services provided in the cloud may be unmanaged or managed. In an unmanaged cloud, the customer rents access to infrastructure and takes on all the burden of managing that infrastructure, as well as all the tools and applications that run on top of the infrastructure. In a managed cloud, at the infrastructure level, for the services of the managed cloud that the customer subscribes to, the customer is provided with, for example:                architecture guidance,        system administration and operations,        system monitoring, alerting, and reporting,        performance testing and tuning,        proactive communications and 24×7 support,        a single point of contact for support,        Domain Name System (DNS) management,        security and compliance management,        backup and disaster recovery,        database administration, and/or        developer support and training.In a managed cloud, at the applications and tools level, for the services of the managed cloud that the customer subscribes to, the customer is provided with, for example:        development and operations automation tools,        application deployment, scaling, and lifecycle management,        specialized database management,        managed virtualization,        management of applications,        private cloud deployment and management, and/or        digital marketing platform management.        